package com.cloud.DrugManagement.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.cloud.DrugManagement.pojo.OrderContent;

/**
 * @author zhozixiong
 * @date 2023/02/09
 */
public interface OrderContentService extends IService<OrderContent> {

    /**
     * 提交订单后分页查询订单内容
     * @param pages 要查询的页数
     * @param oid 订单编号
     * @return 当前页面的订单内容
     */
    Page<OrderContent> submitSearch(int pages, long oid);

    /**
     * 提交订单前分页查询订单内容
     * @param pages 要查询的页数
     * @param oid 订单编号
     * @return 当前页面的订单内容
     */
    Page<OrderContent> notSubmitSearch(int pages, long oid);

    /**
     * 修改订购数量
     * @param quantity 订购数量
     * @param oid 订单编号
     * @param did 药品编号
     * @return 是否修改成功
     */
    boolean updateQuantityByOidAndDid(int quantity, long oid, int did);

    /**
     * 提交订单时，记录当前药品的价格
     * @param oid 订单编号
     * @return 是否记录成功
     */
    boolean updateOrderPrice(long oid);

    /**
     * 添加订单内容
     * @param orderContent 订单内容
     * @return 是否添加成功
     */
    boolean insert(OrderContent orderContent);

    /**
     * 删除单条订单内容
     * @param oid 订单编号
     * @param did 药品编号
     * @return 是否删除成功
     */
    boolean delByOidAndDid(long oid, int did);
}
